/* -----------------------------------------------------------------------------
    General
   -------------------------------------------------------------------------- */
#menu .pure-menu-heading {
    font-size: 100%;
    padding: .5em .5em;
    white-space: normal;
    text-transform: initial;
}

.pure-g {
    margin-bottom: 0;
}

.pure-form legend {
    font-weight: bold;
    letter-spacing: 0;
    margin: 10px 0 1em 0;
}

.pure-form .pure-g > label {
    margin: .4em 0 .2em;
}

.pure-form input {
    margin-bottom: 10px;
}

.pure-form input[type=text][disabled] {
    color: #777777;
}

.amis {
    font-family:'Lucida Console', monospace;
    font-size: 77%;
    line-height: 1.6;
    color:#777;
}

.chart {
    height: 85vh;
    margin-left: -25px;
    margin-right: -25px;
}

.hist {
    font-size: 85%;
}

.header h1 {
    margin: 0.2em 0;
    font-size: 2.2em;
    font-weight: 300;
}


@media screen and (min-width: 75em) {       /* 1200 , 1em=16px */
    .panel {
        margin-left: 15em;
        margin-right: 15em;
    }
    @media screen and (min-width: 100em) {       /* 1600 , 1em=16px */
        .panel {
            margin-left: 30em;
            margin-right: 30em;
        }
    }
}

@media screen and (max-width: 32em) {  /* 512px */
    .header  > h1 {
        /*line-height: 100%;*/
        font-size: 1.5em;
    }
    body {
        margin-left: -25px;
        margin-right: -25px;
    }
}

.page {
 color: #555;
}

hr {background-color: #eee;border: 0 none;color: #eee;height:1px;}

h2 {
    font-size: 1em;
    color: #555; /* doesn't work */
}

.page {
    margin-top: 10px;
}

.hint {
    color: #999;
    font-size: 80%;
    margin: -10px 0 10px 0;
}

.hint a {
    color:inherit;
}

.panel,
.menu-graf,
.template {
    display: none;
}

select {
    margin-bottom: 10px;
    width: 100%;
}

input.center {
    margin-bottom: 0;
}

div.center {
    margin: .5em 0 1em;
}


#password .content {
    margin: 0 auto;
}

#layout .content {
    margin: 0;
}

/* the hole state div */
div.state {
    border-top: 1px solid #eee;
    margin-top: 20px;
    padding-top: 30px;
}

/* a div into state */
.state div {
    font-size: 80%;
}

/* a span into state */
.state span {
    font-size: 80%;
    font-weight: bold;
}

.right {
    text-align: right;
}
/*.pure-g span.terminal {*/
.terminal {
    font-family:'Lucida Console', monospace;
    /*font-family: 'Courier New', monospace;*/
    /*font-size: 70%;*/
    line-height: 85%;
    /*background-color: #000;*/
    /*color: #0F0;*/
}

/* -----------------------------------------------------------------------------
    Buttons
   -------------------------------------------------------------------------- */

.pure-button {
    border-radius: 4px;
    color: white;
    letter-spacing: 0;
    margin-bottom: 10px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
    padding: 4px 8px;
    width: 120px;
    height: 30px;
}

.button-reboot,
.button-reconnect,
.button-update-evse,
.button-upgrade,
.button-savekonfig
{
    background: rgb(242, 121, 121); /* red */
    float: right;
}

.button-update,
.button-update-general,
.button-update-wifi,
.button-update-mqtt,
.button-update-ntp,
.button-upgrade-browse,
.button-hist_clear,
.button-hist_clear2,
.button-graf,
.button-green
{
    background: rgb(134, 198, 91); /* green */
    float: left;
}

.button-log-next,
.button-log-prev,
.button-log-clear,
.button-log-refresh,
.button-load
{
    background: rgb(79, 132, 198);
    float: left;
    width: 120px;
}

/* -----------------------------------------------------------------------------
    Sliders
   -------------------------------------------------------------------------- */

input.slider {
    margin-top: 10px;
}

span.slider {
    font-size: 70%;
    letter-spacing: 0;
    margin-left: 10px;
    margin-top: 7px;
}

/* -----------------------------------------------------------------------------
    Checkboxes
   -------------------------------------------------------------------------- */

.toggleWrapper {
    overflow: hidden;
    width: auto;
    height: 30px;
    margin: 0px 0px 10px 0px;
    padding: 0px;
    border-radius: 4px;
    box-shadow: inset 1px 1px #CCC;
}
.toggleWrapper input {
    position: absolute;
    left: -99em;
}
label[for].toggle {
    margin: 0px;
    padding: 0px;
}
.toggle {
    letter-spacing:normal;
    cursor: pointer;
    display: inline-block;
    position: relative;
    width: 130px;
    height: 100%;
    background: #e9e9e9;
    color: #a9a9a9;
    border-radius: 4px;
    -webkit-transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.toggle:before,
.toggle:after {
    position: absolute;
    line-height: 30px;
    font-size: .8em;
    z-index: 2;
    -webkit-transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.toggle:before {
    content: "NEIN";
    left: 20px;
}
.on_off .toggle:before {
    content:"AUS";
}
input[name="relay"] + .toggle:before {
    content: "OFF";
}
.toggle:after{
    content: "JA";
    right: 20px;
}
.on_off .toggle:after {
    content:"EIN";
}

input[name="relay"] + .toggle:after {
    content: "ON";
}
.toggle__handler {
    display: inline-block;
    position: relative;
    z-index: 1;
    /*background: #c00000;*/
    background: rgb(242, 121, 121);
    width: 50%;
    height: 100%;
    border-radius: 4px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    top: 0px;
    left: 0px;
    -webkit-transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
    transition: all 200ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
}
input:checked + .toggle:after {
    color: #fff;
}
input:checked + .toggle:before {
    color: #a9a9a9;
}
input + .toggle:before {
    color: #fff;
}
input:checked + .toggle .toggle__handler {
    width: 50%;
    /*background: #00c000;*/
    background: rgb(134, 198, 91); /* green */
    -webkit-transform: translateX(65px);
    transform: translateX(65px);
    border-color: #000;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
input[disabled] + .toggle .toggle__handler {
    background: #ccc;
}

/* -----------------------------------------------------------------------------
    Menu
   -------------------------------------------------------------------------- */

#menu .small {
    font-size: 60%;
    padding-left: 9px;
}

#menu div.footer {
    color: #999;
    font-size: 80%;
    padding: 10px;
}
#menu div.footer a {
    padding: 0;
    text-decoration: none;
}

progress {
    display: none;
    height: 10px;
    margin-top: 10px;
    width: 100%;
}

/* -----------------------------------------------------------------------------
    Password input controls
   -------------------------------------------------------------------------- */
.password-reveal {
    font-family: EmojiSymbols,Segoe UI Symbol;
    background: rgba(0,0,0,0);
    display: inline-block;
    float: right;
    z-index: 50;
    margin-top: 6px;
    margin-left: -30px;
    vertical-align: middle;
    font-size: 1.2em;
    height: 100%;
}

.password-reveal:after {
    content: "👁";
}

input[type="password"] + .password-reveal {
    /*color: rgba(205, 205, 205, 0.3);*/
    color: rgba(100, 100, 100, 0.8);
}

input[type="text"] + .password-reveal {
    color: rgba(66, 184, 221, 0.8);
}

input::placeholder {
    color: #888;
    font-size: 87%;
}

.led {
    /*margin: 5px auto;*/
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.25);
    box-shadow: #000 0 -1px 6px 1px;
    float: right;
}
.led-red {
    background-color: #F00;
    box-shadow: #000 0 -1px 6px 1px, inset #600 0 -1px 8px, #F00 0 3px 11px;
}
.led-orange {
    background-color: #FF7000;
    box-shadow: #000 0 -1px 6px 1px, inset #630 0 -1px 8px, #FF7000 0 3px 11px;
}

.led-yellow {
    background-color: #FF0;
    box-shadow: #000 0 -1px 6px 1px, inset #660 0 -1px 8px, #FF0 0 3px 11px;
}

.led-green {
    background-color: #80FF00;
    box-shadow: #000 0 -1px 6px 1px, inset #460 0 -1px 8px, #80FF00 0 3px 11px;
}

.led-blue {
    background-color: #06F;
    box-shadow: #000 0 -1px 6px 1px, inset #006 0 -1px 8px, #06F 0 3px 11px;

}

.vtxt {
    writing-mode: vertical-lr;
    margin-bottom:10px;
    margin-left:-8px;
    max-height: 50px;
    max-width: 10px;
    font-size: 90%;
}
.htxt {
    font-size: 80%;
}

.bar {
    vertical-align:bottom;
    /*width: 17px;*/
}
.nbar {
    vertical-align:top;
    /*width: 17px;*/
}

/* ############################## pure side-menu ################################*/
body {
    color: #777;
}
.pure-img-responsive {
    max-width: 100%;
    height: auto;
}
/*Add transition to containers so they can push in and out.*/
#layout,
#menu,
.menu-link {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}
/*This is the parent `<div>` that contains the menu and the content area.*/
#layout {
    position: relative;
    left: 0;
    padding-left: 0;
}
    #layout.active #menu {
        left: 150px;
        width: 150px;
    }

    #layout.active .menu-link {
        left: 150px;
    }
/*The content `<div>` is where all your content goes.*/
.content {
    margin: 0 auto;
    padding: 0 2em;
    max-width: 1800px;
    margin-bottom: 50px;
    line-height: 1.6em;
}
.header {
     margin: 0;
     color: #333;
     text-align: center;
     padding: 2.5em 2em 0;
     border-bottom: 1px solid #eee;
 }
.header h2 {
    font-weight: 300;
    color: #999;
    padding: 0;
    margin-top: 0;
}

.content-subhead {
    margin: 50px 0 20px 0;
    font-weight: 300;
    color: #888;
}
/*The `#menu` `<div>` is the parent `<div>` that contains the `.pure-menu` that appears on the left side of the page.*/
#menu {
    margin-left: -150px; /* "#menu" width */
    width: 150px;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1000; /* so the menu or its navicon stays above all content */
    background: #191818;
    overflow-y: auto;
}
    /*    All anchors inside the menu should be styled like this.    */
    #menu a {
        color: #999;
        border: none;
        padding: 0.6em 0 0.6em 0.6em;
    }

    /*    Remove all background/borders, since we are applying them to #menu.    */
     #menu .pure-menu,
     #menu .pure-menu ul {
        border: none;
        background: transparent;
    }
    /*    Add that light border to separate items into groups.    */
    #menu .pure-menu ul,
    #menu .pure-menu .menu-item-divided {
        border-top: 1px solid #333;
    }
        /* Change color of the anchor links on hover/focus.*/
        #menu .pure-menu li a:hover,
        #menu .pure-menu li a:focus {
            background: #333;
        }
    /*    This styles the selected menu item `<li>`. */
    #menu .pure-menu-selected,
    #menu .pure-menu-heading {
        background: #1f8dd6;
    }
        /*This styles a link within a selected menu item `<li>`.*/
        #menu .pure-menu-selected a {
            color: #fff;
        }
    /*This styles the menu heading.*/
    #menu .pure-menu-heading {
        font-size: 110%;
        color: #fff;
        margin: 0;
    }

/* -- Dynamic Button For Responsive Menu -------------------------------------

The button to open/close the Menu is custom-made and not part of Pure. Here's how it works:
`.menu-link` represents the responsive menu toggle that shows/hides on small screens. */
.menu-link {
    position: fixed;
    display: block; /* show this only on small screens */
    top: 0;
    left: 0; /* "#menu width" */
    background: #000;
    background: rgba(0,0,0,0.7);
    font-size: 10px; /* change this value to increase/decrease button size */
    z-index: 10;
    width: 2em;
    height: auto;
    padding: 2.1em 1.6em;
}

    .menu-link:hover,
    .menu-link:focus {
        background: #000;
    }

    .menu-link span {
        position: relative;
        display: block;
    }

    .menu-link span,
    .menu-link span:before,
    .menu-link span:after {
        background-color: #fff;
        width: 100%;
        height: 0.2em;
    }

        .menu-link span:before,
        .menu-link span:after {
            position: absolute;
            margin-top: -0.6em;
            content: " ";
        }

        .menu-link span:after {
            margin-top: 0.6em;
        }


/* -- Responsive Styles (Media Queries) -------------------------------------
Hides the menu at `48em`, but modify this based on your app's needs. */

/*@media (min-width: 48em) {*/
@media (min-width: 200em) {

    .header,
    .content {
        padding-left: 2em;
        padding-right: 2em;
    }

    #layout {
        padding-left: 150px; /* left col width "#menu" */
        left: 0;
    }
    #menu {
        left: 150px;
    }

    .menu-link {
        position: fixed;
        left: 150px;
        display: none;
    }

    #layout.active .menu-link {
        left: 150px;
    }
}

/*@media (max-width: 48em) {*/
@media (max-width: 200em) {
    /* Only apply this when the window is small. Otherwise, the following
    case results in extra padding on the left:
        * Make the window small.
        * Tap the menu to trigger the active state.
        * Make the window large again.
    */
    #layout.active {
        position: relative;
        left: 150px;
    }
}
