html {
    height: 100%;
}

body {
    font-family: "Open Sans", sans-serif;
    font-size: 1em;
    line-height: 1.6;
/*    background: linear-gradient(45deg, #9e9e9e, #c4c4c4 66%, #9e9e9e); */
}

/*
input {
    background-color: #707070;
    background: linear-gradient(to top, #9e9e9e, #f4f4f4);
    height: 30px;
    box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.7);

    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
    font-size: 0.9em;
    font-weight: 600;

}
*/

button {
    border-radius: 99999px;
    background-color: #707070;
    background: linear-gradient(to bottom, #f4f4f4, #9e9e9e);

    height: 30px;
    width: 100px;

    text-transform: uppercase;
    font-size: 0.9em;
    font-weight: 800;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    letter-spacing: 1px;

}


/* Job Entry */

.jobstate-entry {
    margin: 3px;
    list-style-type: none;
    list-style-position: outside;
    position: relative;
    display: block;
    width: 6.5em;
    height: 1.7em;
    background-color: gray;
    background: linear-gradient(to top, #f4f4f4, #9e9e9e 80%);
    border-radius: 99999px;
    box-shadow: 1px 1px 1px 0 #3f3f3f, -1px -1px 1px 0 #ffffff;
    vertical-align: middle;
    cursor: pointer;
}

.jobstate-entry::before {
    content:"";
    list-style-type: none;
    list-style-position: outside;
    position: absolute;
    display: inline-block;
    left: 4%;
    right: 4%;
    top: 10%;
    bottom: 10%;
    width: 92%;
    height: 80%;
    background-color: gray;
    background: linear-gradient(to bottom, #f4f4f4, #9e9e9e 80%);
    border-radius: 99999px;

}

.jobstate-entry > span {
    left: 10%;
    top: 8%;
    position: relative;
    display: inline-block;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
    font-size: 0.9em;
    font-weight: 800;

}

.jobstate-entry > span::before {
    content: "";
    vertical-align: sub;
    position: relative;
    display:inline-block;
    margin-right: 3px;
    width: 1.1em;
    height: 1.1em;
    border-radius: 50%;
    background: black;
    left: 2%;
    top: 5%;
    bottom: 5%;
    border-radius: 99999px;
    background-color: #707070;
    box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.7);
}

.jobstate-entry.SUCCEEDED > span::before {
    background: rgb(150,255,0);
    box-shadow: inset 0 0 4px 0 rgba(0, 0, 0, 0.5), 0 0 11px 1px rgb(150,255,0);
}


.jobstate-entry.FAILED > span::before {
    background: rgb(255,160,130);
    box-shadow: inset 0 0 7px 0 rgba(250, 50, 50, 1.0), 0 0 11px 2px rgb(255,160,130);
}

.jobstate-entry.RUNNING > span::before {
    background: lightyellow;
    box-shadow: inset 0 0 4px 0 rgba(0, 0, 0, 0.5), 0 0 11px 1px rgb(250,255,80);
}

/* CodeMirror */

.CodeMirror {

    height: 60%;
}

.toggle-collapse-closed::after {
    font-family: 'Font Awesome 5 Free';
    content: "\f077";
    float: right;
    cursor: pointer;
}

.toggle-collapse-opened::after {
    font-family: 'Font Awesome 5 Free';
    content: "\f078";
    float: right;
    cursor: pointer;
}

.modal-mask {
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    display: table;
    transition: opacity .3s ease;
}

.modal-wrapper {
    display: table-cell;
    vertical-align: middle;
}

.modal-container {
    width: 300px;
    margin: 0px auto;
    padding: 20px 30px;
    background-color: #fff;
    border-radius: 2px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .33);
    transition: all .3s ease;
    font-family: Helvetica, Arial, sans-serif;
}

.modal-header h3 {
    margin-top: 0;
    color: #42b983;
}

.modal-body {
    margin: 20px 0;
}

.modal-default-button {
    float: right;
}

/*
 * The following styles are auto-applied to elements with
 * transition="modal" when their visibility is toggled
 * by Vue.js.
 *
 * You can easily play with the modal transition by editing
 * these styles.
 */

.modal-enter {
    opacity: 0;
}

.modal-leave-active {
    opacity: 0;
}

.modal-enter .modal-container,
.modal-leave-active .modal-container {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}


/* LOGGER */
.logger table {
    border-collapse: collapse;
    width: 100%;
}
.logger table th{
    text-align: left;
    padding-left: 5px;
    padding-right: 5px;
}
.log-entry td {
    border-bottom: 1px solid gray;
    padding-left: 5px;
    padding-right: 5px;
    vertical-align: top;
}
.log-entry-level-undefined {
    background: lightgray;
}

.log-entry-level-information {
    background: lightgreen;
}
.log-entry-level-warning {
    background: lightgoldenrodyellow;
}
.log-entry-level-error {
    background: lightsalmon;
}
.log-entry-level-critical {
    background: lightcoral;
}



/* toggle switch */


.toggle-switch {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 30px;
    background-color: gray;
    background: linear-gradient(to top, #f4f4f4, #9e9e9e 20%);
    border-radius: 99999px;
    /* box-shadow: h-offset v-offset blur spread color inset initial inherit */
    box-shadow: 1px 1px 1px 0 #3f3f3f, -1px -1px 1px 0 #ffffff; /* 2px offset gray to top, white to bottom */
    cursor: pointer;
    vertical-align: middle;
}


.toggle-switch input[type="checkbox"]  {
    display: none;
}


.toggle-switch div {
    top: 50%;
    left: 50%;
    width: 80%;
    height: 60%;
    border-radius: 99999px;
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    background-color: #707070;
    box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.7);
}

.toggle-switch input[type="checkbox"]:checked ~ div {
    /* box-shadow: h-offset v-offset blur spread color inset initial inherit */
    box-shadow: inset 0 0 9px 0 rgba(0, 100, 0, 0.8),0 0 11px 1px rgb(150,255,0);
    background-color: rgb(150,250,0);
}

.toggle-switch input[type="checkbox"] ~ .toggle-switch-slider {
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    background: linear-gradient(to top, #9e9e9e 20%, #f4f4f4);
    border-radius: 50%;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.7);
    top: 0;
    left: 0;
    /*
    transition: all 0.3s ease-in 0s;
    */
    transition: .25s;
}

.toggle-switch input[type="checkbox"] ~ .toggle-switch-slider:after {
    content: "";
    display: block;
    left: 15%;
    top: 15%;
    width: 70%;
    height: 70%;
    border-radius: 50%;
    position: absolute;
    background: linear-gradient(to top, #f4f4f4, #9e9e9e);
    /*
    z-index: 1;
     */


}


.toggle-switch input[type="checkbox"]:checked ~ .toggle-switch-slider {
    -moz-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);


    left: 100%;

}


.toggle-switch div > .on,.off {




    position: absolute;


    /*
    background-color: #34A7C1;
     */

    top: 50%;
    text-transform: uppercase;

    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 0.8em;
    font-weight: 600;
    z-index: 2;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    letter-spacing: 1px;


    transition: .25s;
}


.on {
    left: 10%;
    color: transparent;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0);
}

.toggle-switch input[type="checkbox"]:checked ~ div > .on {
    color: rgb(0,154,0);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
}

.off {
    right: 10%;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
}

.toggle-switch input[type="checkbox"]:checked + div > .off {
    color: transparent;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0);
}


/* NAV BAR */
.nav {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
.nav::after, .nav::before {
    display: table;
    content: " ";
    clear: both;
}
.nav-tabs {
    margin-bottom: 15px;
}
.nav-tabs::after {
    content:"";
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, #f4f4f4 20%, #3f3f3f00);
    clear:both;
}
.nav-tabs > li {
    float: left;
    margin-bottom: -2px;
}
.nav > li {
    position: relative;
    display: block;
}
.nav > li > a {
    position: relative;
    display: block;
    padding: 10px 15px;
}
.nav-tabs > li.active > a, .nav-tabs > li.active > a:focus, .nav-tabs > li.active > a:hover {
    /* color: #555; */
    cursor: default;
    background: linear-gradient(to bottom, #f4f4f4, #9e9e9e);
    box-shadow: inset 1px 1px 1px 0 #ffffff,inset -1px 1px 1px 0 #3f3f3f;
    border-bottom-width: 0;
}
.nav-tabs > li > a {
    margin-right: 2px;
    line-height: 1.42857143;
    border-radius: 15px 15px 0 0;
    background: linear-gradient(to top, #f4f4f4, #9e9e9e);
    box-shadow: inset 1px 1px 1px 0 #3f3f3f,inset -1px 1px 1px 0 #ffffff;
    color: black;
    text-transform: uppercase;
    font-size: 0.9em;
    font-weight: 800;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
    text-decoration: none;
}
