body {
    background-color: #CCCCCC;
}

@media (max-width: 767px) {
    body {
        padding: 0;
    }
}

#page-container {
    min-height: 100%;
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

#page-header {
    width: 100%;
    padding: 0;
    margin: 0;
    border-bottom: none;
}

#page-content {
    padding: 10px 0 50px 0;
    width: 100%;
}

#page-footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 45px;
    background-color: #f5f5f5;
    color: #666;
    font-size: 12px;
}

#page-footer .separator {
    padding-left: 5px;
    padding-right: 5px;
}

.page-container {
    margin-top: 5px;
    margin-bottom: 40px;
}

.re-page {
    box-shadow: 2px 0 2px 2px #666
}

.re-page3 {
}

.re-page3 > .page-topbar {
}

.re-page3 > .page-container {
}

.re-page3 > .page-content {
}

.re-page3 > .page-footer {
}

.re-page3 > .page-bottombar {
}

.re-page-content {
    position: relative;
    min-height: 100%;
    padding: 5px 10px 20px 10px;
}

.re-navbar {
    color: white;
    background: green;
    font-style: normal;
    /*text-transform: uppercase;*/
}

.re-navbar > ul {
    list-style-type: none;
}

.re-navbar > ul > li {
    display: inline-block;
    vertical-align: middle;
}

.re-navbar a, .re-navbar a:visited, .re-navbar a:active {
    color: white;
}

.re-topbar {
    height: 40px;
    width: 100%;

    margin-bottom: 5px;
    /*padding: 0 3%;*/

    font-size: 15px;
    white-space: nowrap;
}

.re-topbar .brand img {
    height: 40px;
}

.re-topbar > ul {
    height: 40px;
    margin: 0;
    list-style-type: none;
}

.re-topbar > ul > li {
    height: 40px;
    line-height: 40px;
    padding: 0 5px 0 5px;
    display: inline-block;
}

.re-topbar > ul > li.active {
    top: 0;
    text-decoration: underline;
    font-weight: bold;
    /*height: 55px;*/
}

.re-topbar > ul > li .dropdown-menu {
    text-transform: none;
}

.re-bottombar {
    padding: 5px 10px 0 5px;
}

.re-bottombar.single-line {
    padding-top: 15px;
}

.re-subnav {
    height: 30px;
    width: 94%;
    margin: 0 3% 0 3%;
    color: white;
    background: green;

    font-size: 13px;

    box-shadow: 0 1px 1px 0 #666
}

.re-subnav li {
    height: 50px;
    line-height: 50px;
    padding: 0 5px 0 5px;
}

.re-subnav li i {
    margin-top: -4px;
}

.re-subnav li .glyph-icon {
    margin-top: 2px;
    margin-right: 5px;
}

.re-page-container {
    position: relative;
    min-height: 100%;
}

.re-footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 50px;
    background: green;
}

.re-subnav ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.re-subnav li {
    /*padding-left: ;*/
    line-height: 30px;
    vertical-align: middle;
}

.re-subnav a, .re-subnav a:visited, .re-subnav a:active {
    color: white;
}

@media (max-width: 600px) {
    .re-topbar {
        margin-bottom: 0;
        border-bottom: 1px solid #333333;
    }

    .re-subnav {
        width: 100%;
        margin: 0;
    }
}

.re-module-header {
    font-size: 17px;
    font-weight: normal;
    text-transform: uppercase;
    padding: 10px 10px 5px;
}

.re-module-header .re-page-header {
    margin: 0;
}

.re-module-header .toolbar {
    font-size: 14px;
    padding: 0;
}

.re-module-header .toolbar.re-flat-btn {
    padding: 4px 4px 2px;
    margin-top: -4px;
}

.re-module-header .toolbar.re-flat-btn .caret {
    margin-top: 8px;
    margin-left: 2px;
}

.re-module-subheader {
    font-weight: normal;
    padding: 0 10px 5px;
    margin-top: -5px;
}

.re-module-header small, .re-module-subheader small,
.re-module-header .small, .re-module-subheader .small {
    font-size: 85%;
    color: #666;
    margin-left: 0.4em;
    /*text-transform: none;*/
}

.re-module-frame {
    /* pelkistetty * /
    border: 0px;
    padding: 0px;
    background: white;
    /**/

    /* pienemmät reunat * /
    border-radius: 2px;
    padding: 5px;
    background: #96B5A6;
    /**/

    /* joonas design * /
    border: 2px solid #ADBCA2;
    padding: 10px;
    background: #D6F3C7;
    background: -webkit-linear-gradient(#D6F3C7, #C1D8B4);
    background: -o-linear-gradient(#D6F3C7, #C1D8B4);
    background: -moz-linear-gradient(#D6F3C7, #C1D8B4);
    background: linear-gradient(#D6F3C7, #C1D8B4);
    box-shadow: 0px 0px 7px #666666;
    /**/

    /*box-shadow: 0 0 5px #666666;*/
    border: 1px solid #ccc;
    margin-bottom: 15px;

    /*padding: 10px 0 10px;*/
    padding: 5px 0 5px;
    background: white;
}

.re-module-frame.large {
    padding: 15px;
}

.re-module-frame form legend {
    font-size: 17px;
    margin-bottom: 0;
}

.re-module-frame .form-actions {
    background: none;
}

.re-module-inside {
    /*border: 2px solid #ADBCA2;*/
    padding: 10px 0 10px;
    border-radius: 2px;
    background: white;
    font-size: 13px;
}

.re-module-inside-small {
    padding: 5px 0 5px;
    border-radius: 2px;
    background: white;
    font-size: 13px;
}

.re-module-inside-tiny {
    padding: 0;
    border-radius: 2px;
    background: white;
    font-size: 13px;
}

.re-module-content {
    padding: 5px 10px 5px 10px;
}

.re-module-content > .title {
    font-size: 110%;
    margin-bottom: 0.5rem;
}

.re-module-content > .value {
    color: #000000;
}

.re-module-content > .value.primary {
    font-size: 220%;
    font-weight: bold;
}

.re-module-subcontent {
    margin-bottom: 1rem;
}

.re-module-subcontent > .title {
    color: #666666;
}

.re-module-subcontent > .value {
    color: #000000;
}

.re-module .help-block {
    color: #888888;
    font-size: 0.9rem;
}

.re-toolbar {
    display: flex;
    flex-flow: row nowrap;
    align-items: end;
    margin-bottom: 0.5rem;
}

.re-toolbar > .toolbar-item {
    margin-right: 0.5rem;
}

.re-toolbar input[type="text"] {
    flex: 100%;
    margin: 0; /* bootstrap override */
}

.select2-search--dropdown .select2-search__field,
.select2-dropdown input[type="search"] {
    height: auto;
}

.re-toolbar .search-box {
    position: relative;
    height: 2rem;
    width: 100%;
}

.re-toolbar .search-box input[type="text"] {
    vertical-align: middle;
    height: 2rem;
    position: absolute;
    width: 100%;
    padding: 0 2rem 0 0.5rem;
    box-sizing: border-box;
}

.re-toolbar .search-box input[type="text"].search {
    background-size: 1.8rem;
    padding-left: 2rem;
}

.re-toolbar .search-box button {
    height: 1.8rem;
    width: 1.8rem;
    padding: 0;
    vertical-align: middle;
    border: none;
    background: none;
    box-shadow: none;
    cursor: pointer;
    position: absolute;
    right: 0.2rem;
    outline: none;
}

.re-tabbable .nav-tabs {
    margin-bottom: 0;
}

.re-search-bar {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.re-search-bar input[type=text] {
    flex: 100%;
}

.re-search-bar button {
    flex: 0 0 100px;
}

.re-search-bar input[type=text] + button {
    margin-left: 5px;
}

@media (max-width: 500px) {
    .re-search-bar {
        flex-flow: row wrap;
    }

    .re-search-bar input[type=text] + button {
        margin-left: 0px;
    }
}

.form-search .search-box {
    width: 100%;
    margin-top: 4px;
    margin-bottom: 4px;
}

.form-search .search-submit {
    float: right;
    margin-top: 0;
}

.form-search .search-inputs {
    overflow: hidden;
    padding-right: 1em;
}

.form-search .search-input {
    width: 100%;
}

.form-search .search-filters {
    margin-top: 4px;
    margin-bottom: 4px;
}

.form-search .search-filters .alert {
    padding: 4px 10px 4px 8px;
    margin-bottom: 0;
}

.form-search .search-filters .alert .close {
    right: -5px;
    font-size: 30px;
}

.form-search .search-filters .alert-search {
    background-color: #dff0d8;
    border-color: #d6e9c6;
    color: #468847;
}

.re-button {
    display: inline-block;

    /*min-height: 32px;*/
    /*min-width: 32px;*/
    /*line-height: 32px;*/
    padding: 0.5rem 1.5rem;

    cursor: pointer;

    background-color: #EEEEEE;

    text-decoration: none;
    border: none;

    /*border-style: solid;
    border-width: 4px;
    border-color: #808285;*/
    color: #333;

    font-size: 1.1rem;
    /*font-size: 17px;*/
    /*font-weight: bold;*/

    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;

    filter: none;
    border-radius: 0;
}

.re-button:hover {
    /*color: #ffffff;*/
    background-color: #DDD;
    transition: none;
}

.re-button:focus,
.re-button:active,
.re-button.active {
    color: #ffffff;
    background-color: #DDD;
    transition: none;
}

.re-button [class^="re-icon-"].icon-sm {
    margin-top: -2px;
    margin-right: 0;
}

.re-button [class^="re-icon-"].icon-sm + span, .re-button > i + * {
    margin-left: 0.3em;
}

.re-button .caret {
    margin-top: 13px;
}

.re-button.default {
    border-size: 2pt;
}

.re-button.small {
    min-width: 40px;
    height: 25px;
    min-height: 25px;
    line-height: 25px;
}

.re-button.btn-primary {
    background: #468847;
    color: #ffffff;
}

.re-button.btn-primary:hover {
    background: #3c783c;
}

.re-button.btn-secondary {
    background: #ebebeb;
}

.re-button.btn-secondary:hover {
    background: #dcdcdc;
}

button.re-button {
    box-sizing: content-box;
}

@media (max-width: 600px) {
    .re-button {
        min-width: 38px;
    }

    .re-button .secondary, .re-button.unimportant {
        display: none;
    }

    .re-button [class^="small-re-icon-"] + span, .re-button [class*=" small-re-icon-"] + .secondary {
        margin-left: 0;
    }

    .re-button .caret {
        margin-top: 20px;
    }
}

@media (min-width: 768px) and (max-width: 979px) {
    .span8 .re-button .secondary, .re-button.unimportant {
        display: none;
    }
}

.re-button-small {
    font-size: 13px;
}

.re-button.positive {
    background-color: #009245;
    border-color: #33A86A;
    color: #ffffff !important;
}

.re-button.negative {
    background-color: #FF0000;
    border-color: #F6989A;
    color: #ffffff !important;
}

.re-button.neutral {
    background-color: #F7931E;
    border-color: #FBD3A5;
    color: #ffffff !important;
}

.re-button.inactive {
    background-color: #E6E6E5;
    border-color: #CCCCCC;
    color: #000000;
}

.re-button.disabled,
.re-button[disabled] {
    background-color: #E6E6E5;
    border-color: #CCCCCC;
    color: #CCCCCC;
    cursor: default;
}

.re-module-frame a:not(.btn) {
    font-size: 17px;
    /*text-decoration: underline;*/
}

.re-module-frame a:not(.btn):link {
    color: #000000;
}

.re-module-frame a:not(.btn):visited {
    color: #000000;
}

.re-module-frame a:not(.btn):hover {
    color: #000000;
}

.re-module-frame a:not(.btn):active {
    color: #000000;
}

.re-module-frame a:not(.btn).disabled {
    color: #606060;
    cursor: default;
}

.re-module-frame .dropdown-menu > li a, * .dropdown-menu > li a {
    font-size: 14px;
    text-transform: none;
}

.re-module-frame .dropdown-menu > li a:hover {
    color: #ffffff;
}

.re-module-frame .re-meter-title {
    max-width: 160px;
    text-overflow: ellipsis;
}

.re-module-frame .re-meter-subtitle {
    max-width: 160px;
    text-overflow: ellipsis;
}

.re-chart .background {
    fill: none;
}

.re-chart .overlay {
    fill: none;
    pointer-events: all;
}

.re-chart .tooltip, .re-chart-tooltip {
    line-height: 1;
    position: absolute;
    min-width: 10em;
    min-height: 1.2em;
    padding: 8px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border-radius: 2px;
    pointer-events: none;
}

.re-chart .tooltip > div, .re-chart-tooltip > div {
    padding: 2px;
}

.re-chart .tooltip .item, .re-chart-tooltip .item {
    font-weight: normal;
    color: #CCCCCC;
}

.re-chart .tooltip .item > .name, .re-chart-tooltip .item > .name {
    font-size: 95%;
}

.re-chart .tooltip .item > .value, .re-chart-tooltip .item > .value {
    margin-left: 4px;
    margin-right: 4px;
}

.re-chart .tooltip .item.active, .re-chart-tooltip .item.active {
    color: #DDDDDD;
}

.re-chart .tooltip .item.active > .value, .re-chart-tooltip .item.active > .value {
    font-weight: bold;
    color: #fff;
}

.re-chart .tooltip .timedelta, .re-chart-tooltip .timedelta {
    margin-left: 6px;
    font-weight: normal;
    color: #DDDDDD;
    font-size: 85%;
}

.re-chart-empty {
    position: absolute;
    top: 45%;
    left: 25%;
    width: 50%;
    margin-top: -40px;
    min-width: 10em;
    min-height: 1.2em;
    padding: 4px;

    background: rgba(220, 220, 220, 0.7);
    /*border: 5px solid red;*/
    color: #000;

    text-align: center;
}

@media (max-width: 600px) {
    .re-chart-empty {
        width: 75%;
        left: 15%;
    }
}

.re-chart-empty .title {
    letter-spacing: 0.04em;
    font-size: 115%;
}

.re-chart-empty .content {
    color: #333;
}

.re-chart-empty a, .re-chart-empty a:link, .re-chart-empty a:visited, .re-chart-empty a:hover {
    font-size: 100%;
    color: #009245;
    text-decoration: underline;
}

.re-chart .hover-ptr-x, .re-chart .hover-ptr-y {
    stroke-width: 2px
}

.re-chart .selection {
    fill: #666;
    stroke: #000;
    stroke-dasharray: 2, 2;
    opacity: 0.65;
}

.re-chart .legend rect.label {
    fill: #FFFFFF;
    display: block;
}

.re-chart .legend .hidden-series {
    opacity: 0.65;
}

.re-chart .legend text {
    cursor: default;
}

.re-chart .legend rect[class^="series-"] {
    stroke-width: 2px;
}

.re-chart .legend .hidden-series rect[class^="series-"] {
    fill-opacity: 0;
}

.re-chart .bar {
    fill: #009245;
}

.re-chart .bar:hover {
    fill: #007537;
}

.re-chart .bar.i1 {
    fill: #009245; /* dk green */
}

.re-chart .series .line, .re-chart .legend line {
    stroke-width: 2.5px;
}

.re-chart .series {
    stroke: #666666;
    fill: #666666;
}

.re-chart .series.highlight {
    -webkit-filter: drop-shadow(0 0 1px #666666);
    filter: drop-shadow(0 0 1px #666666);
}

.re-chart .series-1 {
    stroke: #009245; /* dk green */
    fill: #009245; /* dk green */
}

.re-chart .series-1.highlight {
    -webkit-filter: drop-shadow(0 0 1px #009245);
    filter: drop-shadow(0 0 1px #009245);
}

.re-chart .series-2 {
    stroke: #0071BC; /* pastel blue */
    fill: #0071BC; /* pastel blue */
}

.re-chart .series-2.highlight {
    -webkit-filter: drop-shadow(0 0 1px #0071BC);
    filter: drop-shadow(0 0 1px #0071BC);
}

.re-chart .series-3 {
    stroke: #F7931E; /* orange */
    fill: #F7931E; /* orange */
}

.re-chart .series-3.highlight {
    -webkit-filter: drop-shadow(0 0 1px #F7931E);
    filter: drop-shadow(0 0 1px #F7931E);
}

.re-chart .series-4 {
    stroke: #FF0000; /* red */
    fill: #FF0000; /* red */
}

.re-chart .series-4.highlight {
    -webkit-filter: drop-shadow(0 0 1px #FF0000);
    filter: drop-shadow(0 0 1px #FF0000);
}

.re-chart .series-5 {
    stroke: #000000; /* black */
    fill: #000000; /* black */
}

.re-chart .series-5.highlight {
    -webkit-filter: drop-shadow(0 0 1px #000000);
    filter: drop-shadow(0 0 1px #000000);
}

.re-chart .series-6 {
    stroke: #666666;
    fill: #666666;
}

.re-chart .series-6.highlight {
    -webkit-filter: drop-shadow(0 0 1px #666666);
    filter: drop-shadow(0 0 1px #666666);
}

.re-chart .series-7 {
    stroke: #88CC00; /* lt green */
    fill: #88CC00; /* lt green */
}

.re-chart .series-7.highlight {
    -webkit-filter: drop-shadow(0 0 1px #88CC00);
    filter: drop-shadow(0 0 1px #88CC00);
}

.re-chart .series-8 {
    stroke: #999900;
    fill: #999900;
}

.re-chart .series-8.highlight {
    -webkit-filter: drop-shadow(0 0 1px #999900);
    filter: drop-shadow(0 0 1px #999900);
}

.re-chart .series-9 {
    stroke: #9900FF;
    fill: #9900FF;
}

.re-chart .series-9.highlight {
    -webkit-filter: drop-shadow(0 0 1px #9900FF);
    filter: drop-shadow(0 0 1px #9900FF);
}

.re-chart .series-10 {
    stroke: #428bbc;
    fill: #428bbc;
}

.re-chart .series-10.highlight {
    -webkit-filter: drop-shadow(0 0 1px #428bbc);
    filter: drop-shadow(0 0 1px #428bbc);
}

.re-chart .series-11 {
    stroke: #ff4040;
    fill: #ff4040;
}

.re-chart .series-11.highlight {
    -webkit-filter: drop-shadow(0 0 1px #ff4040);
    filter: drop-shadow(0 0 1px #ff4040);
}

.re-chart .series-12 {
    stroke: #c266ff;
    fill: #c266ff;
}

.re-chart .series-12.highlight {
    -webkit-filter: drop-shadow(0 0 1px #c266ff);
    filter: drop-shadow(0 0 1px #c266ff);
}

.re-chart .bar.i1:hover {
    fill: #007537;
}

.re-chart .bar.i2 {
    fill: #0071BC; /* pastel blue */
}

.re-chart .bar.i2:hover {
    fill: #005a96;
}

.re-chart .bar.i3 {
    fill: #F7931E; /* orange */
}

.re-chart .bar.i3:hover {
    fill: #c67618;
}

.re-chart .bar.i4 {
    fill: #FF0000; /* red */
}

.re-chart .bar.i4:hover {
    fill: #cc0000;
}

.re-chart .bar.i5 {
    fill: #000000; /* black */
}

.re-chart .bar.i5:hover {
    fill: #202020;
}

.re-chart .bar.i6 {
    fill: #8CC63F; /* lt green */
}

.re-chart .bar.i6:hover {
    fill: #709e3b;
}

.re-chart .bar.i7 {
    fill: #29ABE2; /* lt blue */
}

.re-chart .bar.i7:hover {
    fill: #2189b5;
}

.re-chart .bar.i8 {
    fill: #FBDE3B; /* yellow */
}

.re-chart .bar.i8:hover {
    fill: #c9b22f;
}

.re-chart .bar.i9 {
    fill: #800000; /* dk red */
}

.re-chart .bar.i9:hover {
    fill: #660000;
}

.re-chart .border {
    stroke: #666;
    stroke-width: 1px;
    fill: none;
}

.re-chart .axis {
    font-family: "TerminalDosisMedium", Helvetica, sans-serif;
    font-size: 14px;
}

.re-chart .axis path,
.re-chart .axis line {
    fill: none;
    stroke: #000;
    shape-rendering: crispEdges;
}

.re-chart .axis.secondary .domain {
    stroke-width: 0;
    opacity: 0;
}

/*.x.axis path {
  display: none;
}*/

.re-chart .grid .tick {
    stroke: lightgrey;
    opacity: 0.7;
}

.re-chart .grid path {
    stroke-width: 0;
}

.re-chart .grid .tick {
    stroke: lightgrey;
    opacity: 0.7;
}

.re-chart .grid path {
    stroke-width: 0;
}

.re-chart-tip {
    line-height: 1;
    font-weight: bold;
    padding: 12px;
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    border-radius: 2px;
    pointer-events: none;
}

/* Creates a small triangle extender for the infotip  */
.re-chart-tip:after {
    box-sizing: border-box;
    display: inline;
    font-size: 10px;
    width: 100%;
    line-height: 1;
    color: rgba(0, 0, 0, 0.8);
    position: absolute;
    pointer-events: none;
}

/* Northward infotips */
.re-chart-tip.n:after {
    content: "\25BC";
    margin: -1px 0 0 0;
    top: 100%;
    left: 0;
    text-align: center;
}

/* Eastward infotips */
.re-chart-tip.e:after {
    content: "\25C0";
    margin: -4px 0 0 0;
    top: 50%;
    left: -8px;
}

/* Southward infotips */
.re-chart-tip.s:after {
    content: "\25B2";
    margin: 0 0 1px 0;
    top: -8px;
    left: 0;
    text-align: center;
}

/* Westward infotips */
.re-chart-tip.w:after {
    content: "\25B6";
    margin: -4px 0 0 -1px;
    top: 50%;
    left: 100%;
}

.sensor-graph .dygraph-legend {
    width: 200px;
    background-color: transparent !important;
    left: 60px !important;
}

.re-table2 {
    border: 1px solid #ccc;
    background: #FFF;
    margin: 10px 0 10px 0;
    width: 100%;
}

.re-table2 th, .re-table2 td {
    text-align: left;
    padding: 6px 7px;
}

.re-table2.compact {
    width: initial;
}

.re-table2.condensed th,
.re-table2.condensed td {
    padding: 4px 5px;
}

.re-table2 tr {
    border-bottom: 1px solid #DDDDDD;
}

.re-table2.styled tr:nth-child(even) {
    background-color: white;
}

.re-table2.styled tr:nth-child(odd) {
    background-color: #EEEEEE;
}

.re-table2.selectable tbody td {
    cursor: pointer;
}

.re-table2.selectable td > a, .re-table2.selectable th > a {
    color: #009245;
}

.re-table2.selectable .selected a,
.re-table2.selectable a.selected {
    color: #ff0000;
}

.re-table2.selectable.negative a {
    color: #ff0000;
}

.re-table2.selectable tbody tr:hover {
    background-color: #ddd;
}

.re-table2.selectable .selected-indicator {
    display: none;
}

.re-table2.selectable tbody .selected .selected-indicator {
    display: inherit;
}

/* select-status is used in div elements that act as checkbox */
.select-status {
    display: inline-block;
    width: 1em;
    height: 1em;
    border: solid 2px #ddd;
    border-radius: 1em;
    cursor: pointer;
}

.select-status.selected,
.selected .select-status {
    background-color: #468847;
    border-color: #468847;
    box-shadow: 0 0 4px rgba(70, 136, 71, 0.5);
}

.re-table2.plain {
    border: none;
}

.re-table2.plain tr {
    border: none;
}

.re-table2 td {
    vertical-align: middle;
}

ul.sortable li {
    padding: 0.5rem 0.2rem;
}

ul.sortable li:hover {
    background: #F0F0F0;
}

.sortable-placeholder {
    background: #9ec4b0;
    min-height: 1.5rem;
}

thead th.sortable .text {
    display: inline-block;
}

thead th.sortable .text:after {
    content: "\21D5";
    color: #aaaaaa;
}

thead th.sortable.ascending .text:after {
    content: "\25BC";
    font-size: 0.8em;
    color: #101010;
}

thead th.sortable.descending .text:after {
    content: "\25B2";
    font-size: 0.8em;
    color: #101010;
}

thead th.sortable .text a {
    font-size: 1em;
}

thead th.sorted .sortpriority {
    font-size: .8em;
    min-width: 12px;
    text-align: center;
    vertical-align: top;
}

.re-sensor-value-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.re-sensor-value-list li {
    display: inline-block;
    clear: both;
    margin: 0.2rem 0.5rem 0.2rem 0;
    line-height: normal;
}

.re-sensor-value-list li .title {
    display: block;
    text-transform: uppercase;
}

.re-sensor-value-list li .value {
    font-size: 1.2rem;
}

.re-sensor-value-list li.primary {
    font-size: 1.5rem;
}

.re-sensor-value-list li.primary .value {
    font-size: 2.5rem;
    font-weight: bold;
}

.re-sensor-value-list li.detail {
    font-size: 0.85rem;
}

.re-sensor-value-list li.detail .title {
    text-transform: none;
    color: #666666;
}

.re-sensor-value-list li.detail .value {
    font-size: 1rem;
    font-weight: normal;
}

.re-loading-container {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background: black;
    width: 100%;
    height: 100%;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    -khtml-opacity: 0.8;
    opacity: 0.8;
}

.re-loading-content {
    width: 280px;
    height: 160px;
    background-color: #ffffff;
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -140px;
    margin-top: -80px;
}

.re-menu li {
    min-width: 20em;
}

.re-menu li .title {
    display: block;
}

.re-menu li .subtitle {
    display: block;
    color: #888;
}

.re-menu li a:hover .subtitle {
    color: #ddd;
}

.re-menu li .emph {
    color: green;
    text-transform: uppercase;
}

.re-menu li a:hover .emph {
    color: #fff;
}

.bootstrap-select.btn-group.flat .dropdown-menu li > a.opt {
    padding-left: 20px;
}

.span12.expand-expanded {
    margin-left: 0px;
}

.re-subnavtab {
    background: #009245;
    color: #ffffff;
}

.re-subnavtab .navgroup {
    display: inline-block;
    margin: 0;
}

.re-subnavtab .navgroup > * {
    display: inline-block;
    text-transform: uppercase;
    padding: 5px 10px 5px 10px;
}

.re-subnavtab .navgroup .active {
    background: #006837;
}

.re-subnavtab a {
    color: #ffffff;
}

.re-subnavtab .actions {
    float: right;
}

/* v1: */

/* link styling */
.re-link {
    cursor: pointer;
    color: #000;
    border: none;
    background: none;
}

.re-link:hover {
    text-decoration: underline;
}

.re-link.active {
    color: #408140;
}

.re-link.active-negative {
    color: #B92C28;
}

.re-link.inactive {
    color: #999;
}

.re-link.positive {
    color: #009245;
}

.re-link.negative {
    color: #ff0000;
}

/* common layout classes */
.re-list {
    display: table;
    width: 100%;
}

.re-item {
    display: table-row;
    overflow: hidden;
    height: 60px;
    font-size: 1em;
}

.re-item-small {
    height: 30px;
    font-size: 0.8em;
}

.re-item-flex {
    height: auto;
}

.re-content {
    display: table-cell;
    overflow: hidden;
    white-space: nowrap;
    vertical-align: middle;
    padding: 5px;
}

.re-content-expand {
    width: 99%;
    min-width: 50px;
    max-width: 100px;
}

.re-content-full {
    width: 99%;
    column-span: all;
    -webkit-column-span: all;
    min-width: 50px;
    max-width: 100px;
}

/* panel for aligned content */
.re-panel {
    width: 100%;
}

.re-panel .re-header, .re-panel .re-item, .re-panel .re-footer {
    padding: 5px 10px 5px 10px;
    display: table-row;
}

.re-panel .re-header {
    font-size: 16px;
    height: 25px;
    background: #FFF;
}

.re-panel .re-footer {
    font-size: 16px;
    height: 25px;
    background: #EEE;
}

.re-panel .re-title {
    font-size: 120%;
    text-transform: uppercase;
    padding-bottom: 2px;
}

.re-panel-1-1 {
    min-height: 90px;
}

.re-item .re-item-part {
    padding-right: 10px;
}

.re-item .re-item-part:last-child {
    padding-right: 0;
}

/* re-table: use in conjunction with re-panel to format panel as a table */
.re-table, .re-styled-table {
    border: 1px solid #aaa;
    background: #FFF;
    margin: 10px 0 10px 0;
}

.re-styled-table .re-header + .re-item,
.re-styled-table .re-item + .re-item,
.re-styled-table .re-item + .re-footer,
.re-styled-table .re-header + .re-footer {
    border-top: 1px solid #AAA;
}

/* special panel for displaying measurement values */
.re-measurement-list {
    display: table;
    margin-bottom: 10px;
    width: 100%;
}

.re-measurement-list .re-item {
    background: #FFF;
    margin: 5px 0 5px 0;
}

.re-measurement-list .re-item .re-content {
    border-top: 2px solid #F5F5F5;
    border-bottom: 2px solid #F5F5F5;
}

.re-measurement-list .re-item.active .re-content {
    background: #d9ecec;
    border-top: 2px solid #038181;
    border-bottom: 2px solid #038181;
}

.re-measurement-list .re-item.active .re-content:first-of-type {
    border-left: 2px solid #038181;
}

.re-measurement-list .re-item.active .re-content:last-of-type {
    border-right: 2px solid #038181;
}

.re-measurement-list .re-content {
    padding: 0 5px 0 5px;
}

.re-measurement-list .re-thumb-content {
    min-width: 32px;
}

.re-measurement-list .re-title-content {
    width: 99%;
    max-width: 80px;
}

.re-measurement-list .re-value-content {
    min-width: 50px;
}

.re-measurement-list .re-thumb-content.active i {
    border-left: 10px solid green;
    margin-left: -10px;
}

.re-measurement-list .re-select-content.active div {
    height: 50px;
    line-height: 50px;
    background-color: green;
    border-left: 10px solid green;
    margin-left: -10px;
    border-right: 10px solid green;
    margin-right: -10px;
}

@media (min-width: 1200px) {
    .re-measurement-list .re-value-content {
        max-width: 150px;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .re-measurement-list .re-value-content {
        max-width: 90px;
    }
}

@media (max-width: 320px) {
    .re-measurement-list .re-value-content {
        max-width: 100px;
    }
}

.re-measurement-list .re-value-content:before {
    content: "";
    pointer-events: none;
    position: absolute;
    width: 15px;
    height: 55px;
    margin-left: -20px;
    background-image: -webkit-linear-gradient(right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
    background-image: -moz-linear-gradient(right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
    background-image: -ms-linear-gradient(right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
    background-image: -o-linear-gradient(right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
    background-image: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

.re-measurement-list .re-item.active .re-value-content:before {
    background-image: -webkit-linear-gradient(right, rgba(217, 236, 236, 1), rgba(217, 236, 236, 0));
    background-image: -moz-linear-gradient(right, rgba(217, 236, 236, 1), rgba(217, 236, 236, 0));
    background-image: -ms-linear-gradient(right, rgba(217, 236, 236, 1), rgba(217, 236, 236, 0));
    background-image: -o-linear-gradient(right, rgba(217, 236, 236, 1), rgba(217, 236, 236, 0));
    background-image: linear-gradient(to left, rgba(217, 236, 236, 1), rgba(217, 236, 236, 0));
}

.re-measurement-list .re-title {
    font-size: 1.2em;
}

.re-measurement-list .re-subtitle {
    font-size: 1em;
}

.re-measurement-list .component-value {
    font-size: 1.4em;
    font-weight: bold;
    white-space: nowrap;
}

.re-measurement-list .component-unit {
    font-size: 1em;
    white-space: nowrap;
    display: inline-block;
    min-width: 5px;
    text-align: left;
}

@media (min-width: 768px) and (max-width: 979px) {
    .re-measurement-list .component-unit {
        max-width: 30px;
    }
}

@media (max-width: 320px) {
    .re-measurement-list .component-unit {
        max-width: 20px;
    }
}

.re-measurement-list .component-name {
    font-size: 1em;
    white-space: nowrap;
}

@media (min-width: 768px) and (max-width: 979px) {
    .re-thumb-content {
        display: none;
    }

    .re-measurement-list .re-item.active .re-title-content {
        border-left: 2px solid #038181;
    }
}

@media (max-width: 320px) {
    .re-thumb-content {
        display: none;
    }

    .re-measurement-list .re-item.active .re-title-content {
        border-left: 2px solid #038181;
    }
}

/* colored status panels */
div.re-status-success, li.re-status-success {
    background: #009900;
    color: #FFF;
}

div.re-status-warning, li.re-status-warning {
    background: #FA0;
    color: #000;
}

div.re-status-alert, li.re-status-alert {
    background: #F00;
    color: #FFF;
}

div.re-status-off, li.re-status-off {
    background: #CCC;
    color: #000;
}

a.re-status-success {
    color: #6fc97c;
}

a.re-status-warning {
    color: #FA0;
}

a.re-status-alert {
    color: #F00;
}

a.re-status-off {
    color: #CCC;
}

a.re-status-toggle {
    color: #CCC;
}

a.re-status-toggle.active {
    color: inherit;
}

.re-status-disabled {
    background: #EEE;
    color: #888;
}

.re-status-disabled input {
    background: #EEE;
    color: #888;
}

.re-status-success, .re-status-warning, .re-status-off a {
    color: #222;
}

.re-status-success, .re-status-warning, .re-status-off a:hover {
    color: #000;
}

.re-status-alert a:not(.btn) {
    color: #EEE;
}

.re-status-alert a:not(.btn):hover {
    color: #FFF;
}

/* link block control */
a.re-link-block {
    font-size: 18px;
    display: block;
    padding: 10px 5px 10px 5px;
    margin: 5px 0 5px 0;
    color: #000;
    background: #CCC;
    cursor: pointer;
}

a.re-link-block:hover {
    background: #BBB;
}

a.re-link-block:after {
    content: ">";
    font-family: monospace;
    font-size: 125%;
    font-weight: bold;
    color: #666;
    text-align: right;
    float: right;
}

a.re-link-block.active {
    color: #FFF;
    background: #666;
}

a.re-link-block.active:after {
    color: #FFF;
}

a.text-link,
.re-module-frame a:not(.btn).text-link {
    color: #0971ad;
    font-size: inherit;
}

/* miscellaneous content controls */
.re-page-header {
    font-size: 1.4em;
    font-style: normal;
    font-weight: normal;
    margin: 0 5px 0 5px;
    padding: 0;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
}

.re-page-header .small {
    font-size: 75%;
}

.re-content-header {
    font-size: 1.2em;
    font-style: normal;
    font-weight: normal;
    margin: 20px 5px 10px 5px;
    padding: 0;
}

.re-content-separator {
    margin: 10px 0 5px 0;
    min-height: 5px;
}

/* dialog */
.re-dialog {
    background-color: #FFF;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
}

.re-dialog .re-page-header {
    font-size: 24px;
    text-transform: uppercase;
    margin-left: 0;
}

.re-dialog .modal-body {
    min-height: 280px;
    max-height: 90%;
}

.re-dialog.modal {
    top: 5%;
}

@media (max-width: 600px) {
    .re-dialog {
        width: 100%;
        height: 100%;
        margin: 0;
        top: 0;
        left: 0;
        border-radius: 0;
        border: none;
        box-shadow: none;
    }

    .re-dialog.modal {
        top: 0;
    }

    .re-dialog .modal-body {
        max-height: 90%;
    }
}

.re-dialog .datepicker {
    z-index: 1151 !important;
}

.re-dialog .control-label {
    width: 10em;
    text-align: left;
    clear: left;
    float: left;
    margin-top: 2px;
}

.re-dialog .controls {
    margin-left: 10em;
}

.re-dialog label.toggleable {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.re-dialog label.toggleable [type="checkbox"] {
    display: none;
}

.re-dialog label.toggleable [type="checkbox"] + span {
    display: inline-block;

    border: 1px solid #bbb;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;

    background: #ccc;
    color: #666;
    padding: 0.5em;
}

.re-dialog label.toggleable span {
    min-width: 2em;
    text-align: center;
}

.re-dialog label.toggleable :checked + span {
    background: #009245;
    background: -moz-linear-gradient(-45deg, #009245 0%, #8CC63F 50%, #009245 100%);
    background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, #009245), color-stop(50%, #8CC63F), color-stop(100%, #009245));
    background: -webkit-linear-gradient(-45deg, #009245 0%, #8CC63F 50%, #009245 100%);
    background: -o-linear-gradient(-45deg, #009245 0%, #8CC63F 50%, #009245 100%);
    background: -ms-linear-gradient(-45deg, #009245 0%, #8CC63F 50%, #009245 100%);
    background: linear-gradient(135deg, #009245 0%, #8CC63F 50%, #009245 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#009245', endColorstr='#009245', GradientType=1);
    color: #FFF;
}

.re-dialog label.toggleable [type="checkbox"][disabled] + span {
    background: #f00;
}

/* form */
.re-form {
    padding-right: 10px;
}

.re-form textarea {
    resize: vertical;
}

.re-form legend {
    font-size: 14px;
    border-style: none;
    line-height: 22px;
    margin: 10px 0 5px 0;
    text-transform: uppercase;
    color: #333;
}

.re-form.form-horizontal div.text {
    margin: 5px 0 10px 10px;
    color: #444444;
}

.re-form .row {
    margin: 5px 0 5px 0;
    padding: 2px 0 2px 0;
}

.re-form .entryfield {
    width: 100%;
    min-width: 100px;
    max-width: 320px;
}

.re-form .entryfield-wide {
    width: 100%;
    min-width: 100px;
    max-width: 480px;
}

.re-form .input-group > label {
    display: inline-block;
    min-width: 8rem;
    margin-bottom: 0.5rem;
}

.re-form .input-group > input[type=text]{
    width: 100%;
    max-width: 25rem;
}

.re-form .content-group {
    margin-top: 5px;
    display: inline-block
}

/* text-checkbox - styled toggle on/off control with text element inside,
 * instead of check mark */
.re-form .text-checkbox input {
    display: none;
}

.re-form .text-checkbox span {
    display: inline-block;
    border-radius: 3px;
    min-height: 20px;
    min-width: 25px;
    padding: 4px 5px 4px 5px;
    border: 1px solid #999;
    text-align: center;
    vertical-align: middle;
    background: #DDD;
    color: #666;
}

.re-form .text-checkbox input:checked + span {
    background: #468847;
    border-color: #356635;
    color: #FFF;
}

.re-form .re-status-error {
    color: #F00;
    background: #FEE;
}

.re-form .re-error-text {
    display: none;
}

.re-form .re-status-error .re-error-text {
    display: inline;
}

.re-form select.related-input {
    margin-bottom: 5px;
}

form.unformatted {
    margin: 0;
}

/* misc components */
.re-flat-btn {
    border-radius: 4px;
    min-width: 100px;
    min-height: 25px;
    padding: 7px 4px 4px 4px;
    cursor: pointer;
}

.re-flat-btn:hover {
    background-color: #fafafa;
}

.re-flat-btn .caret {
    margin-top: 6px;
}

.re-action-ok {
    background: green;
}

.re-action-cancel {
    background: red;
}

.re-number-input-container input {
    max-width: 60px;
    text-align: center;
    border-radius: 0;
}

.re-number-input-container .btn {
    padding-left: 8px;
    padding-right: 8px;
    background: #EEE;
    border-radius: 0;
}

.re-number-input-container .btn + input {
    border-left-style: none;
}

.re-number-input-container input + .btn {
    border-left-style: none;
}

/* bootstrap/modal dialog adjustments */
/*.modal {
  top: 10%;
  bottom: 10%;
}*/
.modal-body {
    max-height: 100%;
    height: 85%;
}

.bootstrap-timepicker-widget.dropdown-menu.open {
    display: inline-block;
    z-index: 1151;
}

.bootstrap-timepicker-widget .dropdown-menu {
    z-index: 1151;
}

.bootstrap-timepicker {
    width: auto !important;
}

/* other layout classes */
@media (max-width: 767px) {
    .re-hide-on-mobile {
        display: none !important;
    }
}

/* bootstrap adjustments */
.input-tiny {
    width: 30px;
}

.input-number {
    text-align: center;
}

.re-content .input-append, .re-content .input-prepend {
    margin-bottom: 0;
}

/* select2 adjustments to ensure consistent theming */
.re-select2 .select2-choices {
    border: 1px solid #CCC !important;
    border-radius: 4px;
}

.re-select2 input {
    font-family: 'TerminalDosisMedium', Helvetica, sans-serif !important;
    font-size: 14px !important;
}

/* html.touch from modernizr */
html.touch .text-checkbox span {
    min-height: 30px;
    min-width: 35px;
}

/* fullscreen mode styles */
.fullscreen {
    overflow-y: hidden;
    padding: 0;
}

.fullscreen a {
    pointer-events: none;
}

.fullscreen .page-container {
    margin: 0;
    padding: 0;
}

.fullscreen #other-half {
    margin: 0;
}

.fullscreen .re-module-frame {
    margin: 0;
    padding: 0;
}

.fullscreen .sensor-graph {
    height: 92vh;
}

@media (max-height: 800px) {
    .fullscreen .sensor-graph {
        height: 90vh;
    }
}

@media (max-height: 600px) {
    .fullscreen .sensor-graph {
        height: 87vh;
    }
}

@media (max-height: 500px) {
    .fullscreen .sensor-graph {
        height: 85vh;
    }
}

@media (max-height: 400px) {
    .fullscreen .sensor-graph {
        height: 81vh;
    }
}

.fullscreen #first-half > .well {
    border-style: none;
    background: none;
    box-shadow: none;
}

.fullscreen .re-chart .series .line, .fullscreen .re-chart .legend line {
    stroke-width: 4px;
}

.fullscreen .re-chart .axis, .fullscreen .re-chart text {
    font-size: 18px;
}

.fullscreen .re-chart .legend text {
    font-size: 16px;
}

.fullscreen .re-module-frame {
    border: 0;
}

.fullscreen {
    background: white;
}

@media print {
    .unbreakable {
        display: table;
        page-break-inside: avoid;
    }
}

div.table {
    display: table;
}

form.tr, div.tr {
    display: table-row;
}

div.td, span.td {
    display: table-cell;
}

.breadcrumbs {
    padding: 0.2rem;
}

.breadcrumbs > ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.breadcrumbs > ul > li {
    display: inline-block;
    vertical-align: middle;
    text-transform: capitalize;
}

.breadcrumbs li:not(:last-child):after {
    content: "\0203A";
}

/* Styles used together with re-icon- prefix */

.re-style-red {
    background-color: #A7272D;
}

.re-style-orange {
    background-color: #F15A24;
}

.re-style-yellow {
    background-color: #FBDE3B;
}

.re-style-lightgreen {
    background-color: #8CC63F;
}

.re-style-darkgreen {
    background-color: #005A41;
}

.re-style-lightblue {
    background-color: #29ABE2;
}

.re-style-blue {
    background-color: #0000FF;
}

.re-style-darkblue {
    background-color: #2E3192;
}

.re-style-gray {
    background-color: #CCCCCC;
}

.re-style-darkgray {
    background-color: #666666;
}

.re-style-black {
    background-color: #000000;
}

.re-style-white {
    background-color: #FFFFFF;
}

.re-style-aqi_green {
    background-color: #00E400;
}

.re-style-aqi_yellow {
    background-color: #FFFF00;
}

.re-style-aqi_orange {
    background-color: #FF7E00;
}

.re-style-aqi_red {
    background-color: #FF0000;
}

.re-style-aqi_purple {
    background-color: #99004C;
}

.re-style-aqi_maroon {
    background-color: #7E0023;
}

.re-style-uvi1 {
    background-color: #4EB400;
}

.re-style-uvi3 {
    background-color: #F7E400;
}

.re-style-uvi5 {
    background-color: #F88700;
}

.re-style-uvi7 {
    background-color: #E82C0E;
}

.re-style-uvi9 {
    background-color: #FF0099;
}

.re-style-uvi11 {
    background-color: #998CFF;
}

.re-style-uvi13 {
    background-color: #7164D7;
}

.re-style-uvi15 {
    background-color: #493CAF;
}

.re-style-uvi17 {
    background-color: #211487;
}

.re-style-ok {
    background-color: #00E400;
}

.re-style-warning {
    background-color: #FFFF00;
}

.re-style-danger {
    background-color: #FF0000;
}

.re-style-under_limit {
    background-color: #FF0000;
}

.re-style-over_limit {
    background-color: #FF0000;
}

.re-module-frame .leaflet-container .leaflet-control-attribution,
.re-module-frame .leaflet-container .leaflet-control-attribution a:not(.btn),
.re-module-frame .leaflet-container .leaflet-control-scale {
    font-size: 0.7rem !important;
}
